﻿namespace WayneGameSolution.Membership
{
    using System;
    using WayneGameSolution;
    using WayneGameSolution.Communicate;

    public interface IUserFactory
    {
        string GetUserNickByUID(string UID);
        string GetUserUIDByUserNick(string UserNick);
        void TryCreateNewUser(ref ReturnValue<IUser> ReturnValue, IServerSideLink ClientLink, string UID, string Password, string EMail);
        void TryLocateUser(ref ReturnValue<IUser> ReturnValue, string UID);
        void TryLoginUser(ref ReturnValue<IUser> ReturnValue, IServerSideLink ClientLink, string UID, string Password);

        string ApplicationName { get; set; }

        string HashSalt { get; set; }

        string HashType { get; set; }

        int UserTimerActionInterval { get; set; }
    }
}

